package com.hf.service;

import java.util.List;

import org.apache.ibatis.annotations.Param;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.hf.entity.Users;
import com.hf.entity.UsersParam;

/**
 * <p>
 * 服务类
 * </p>
 *
 * @author eight
 * @since 2021-06-06
 */
public interface IUsersService extends IService<Users> {
	public IPage<Users> getList(UsersParam u);

	public Users getUserByUserId(Integer userId);

	public boolean updateIsQianDao(Integer userId);

	public boolean updateIsQianTui(Integer userId);

	/**
	 * 登录
	 * 
	 * @param loginName
	 * @param password
	 * @param isLockOut
	 * @return
	 */
	public Users userLogin(@Param("loginName") String loginName);

	/**
	 * 最后登录时间
	 * 
	 * @param loginName
	 * @param lastLoginTime
	 * @return
	 */
	public boolean updateLastLoginTime(@Param("id") Integer id, @Param("lastLoginTime") String lastLoginTime);

	/**
	 * 输入错误密码，错误密码次数+1
	 * 
	 * @param u
	 * @return
	 */
	public boolean updatepsdWrongNum(String loginName);

	/**
	 * 登录时查询错误密码的次数
	 * 
	 * @param loginName
	 * @param password
	 * @return
	 */
	public Users getPasswordNum(@Param("loginName") String loginName, @Param("password") String password);

	/**
	 * 登录时锁定账户， 根据登录名和错误密码次数修改是否锁定的状态为1， 0：未锁定，1：锁定
	 * 
	 * @param loginName
	 * @param lockTime
	 * @return
	 */
	public boolean updatelockNum(@Param("loginName") String loginName);

	public boolean setLockTime(@Param("lockTime") String lockTime, @Param("id") Integer id);

	/**
	 * 锁定
	 * 
	 * @param id
	 * @return
	 */
	public boolean setLock(Integer id);

	/**
	 * 解锁
	 * 
	 * @param id
	 * @return
	 */
	public boolean setUnLock(Integer id);

	/**
	 * 查询咨询师
	 * 
	 * @param userParam
	 * @return
	 */
	public List<Users> getziZunShi(UsersParam userParam);

	public List<Users> getQianziZunShi(UsersParam userParam);

}
